package com.finger.userservice.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.finger.modelservice.model.user.UserInfo;
import com.finger.modelservice.vo.user.LoginVo;
import com.finger.modelservice.vo.user.UserAuthVo;
import com.finger.modelservice.vo.user.UserInfoQueryVo;

import java.util.Map;

public interface UserInfoService extends IService<UserInfo> {

    // 用户锁定与解锁功能
    void lock(Integer status, String userId);

    // 用户登录功能
    Map<String, Object> login(LoginVo loginVo);

    // 根据wxId获取用户信息
    UserInfo getUserInfoByOpenid(String openId);

    // 用户认证
    void userAuth(String token, UserAuthVo userAuthVo);

    // 用户信息分页带条件
    IPage<UserInfo> pageUserInfo(Page<UserInfo> userInfoPage, UserInfoQueryVo size);

    // 获取用户信息和联系人信息
    Map<String, Object> showUserInfo(String userId);

    // 用户认证
    void approve(String userId, Integer status);

}
